1. Field of the Invention
The invention relates to routers used in communication networks to route data packets (also known as datagrams) between sources and destinations.
2. Description of the Prior Art
The person skilled in the art knows that a router needs routing information to be able to send over one of its interfaces packets (also known as datagrams) that it has received over another of its interfaces. This information is generally stored in two databases in the router: a routing information base (RIB) that is fed with routing information contained in routing protocol messages exchanged by the routers of the networks, and a forwarding information base (FIB) that is fed with routing information stored in the routing information base by a routing tool (also known as a routing engine) of the router.
Routing protocols commonly used include the Border Gateway Protocol (BGP) and the Open Shortest Path First (OSPF) protocol.
Because the forwarding information base (FIB) has a maximum number of entries that is usually less than the maximum number of entries relating to sending in the routing information base (RIB), it is sometimes saturated, which can prevent the router from functioning in certain situations.
In the present context, the term “entry” means a storage location dedicated to an item of information in a database taking the form of a table of correspondences.
In an attempt to overcome this problem, it has been proposed to equip routers with a management device responsible for monitoring the status of the forwarding information base (FIB) in terms of how full it is, in order to stop feeding it with routing information coming from the routing information base just before it becomes saturated. In the case of BGP routers, it has also been proposed to limit the number of prefixes (or addresses) received by each router.
In either case, if the forwarding information base (FIB) is saturated and feeding it has been stopped, it may not contain definitions of all the routes, known as primary routes, that enable its router to provide complete connectivity vis à vis the addresses (or prefixes) that it knows, although it does contain definitions of routes, known as secondary routes, for providing additional services, such as a traffic distribution service (also known as “load balancing”) and a redundancy service, that are not directly related to connectivity.
Consequently, in the event of saturation of its second forwarding information base (FIB), the router cannot provide complete connectivity. In other words, the two solutions that have been proposed suffer from a lack of discrimination between routes defined by routing information stored in the first routing information base (RIB).
Moreover, in the event of a large change in the first routing information base (RIB), updating the second forwarding information base (FIB) with all the entries from the RIB, with no distinction between primary and secondary entries, can take some time, during which the router is not available to forward packets that it receives; this is incompatible with the continuity of service expected of an IP network.
Because no prior art solution proves to be entirely satisfactory, one object of the invention is to improve on this situation.